Image forming device capable of acquiring data from web server

ABSTRACT

A facsimile device downloads data from a web server if a URL of the web server is not listed in an access prohibited database. If it is determined that the downloaded data is of the type for which image formation is prohibited, then a printing function is set to OFF. If the printing function is ON, then a display unit displays an outline of the downloaded data, enabling a user to determine whether or not the downloaded data should be printing out. If the user input a print instruction, then the downloaded data is printed out. On the other hand, if the user input a cancel instruction, then the downloaded data is not printed out.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to an image forming device capable ofacquiring data from a web server.

2. Description of the Related Art

Accompanying the increasing popularity of the Internet in recent years,it has become possible to acquire various data by browsing websites andthe like presented by web servers on the Internet.

Also recently, communication systems known as broadband systems arebecoming widely popular for their ability to connect to the Internet incommunication environments having a data transfer rate exceeding about500kbps. These systems have made it possible for any household or officeto enjoy high-speed Internet connections. Some broadband systems wellknown in the art include cable Internet employing a cable television(CATV) network, FTTH (Fiber to the Home) employing optical fibersprovided to individual households, and DSL (Digital Subscriber Line)employing the normal telephone lines provided in most households. Aparticular type of DSL well known in the art called ADSL (AsymmetricDSL) provides faster transfer rates to the user than from the user.

However, the conventional method for accessing the Internet to acquireand browse content on web servers has required complicated connections,settings, and the like. First, a communication device, such as apersonal computer, must be connected to a broadband router or the like,and a signal converting device that supports the above-describedbroadband (hereinafter referred to as a broadband-capable modem), suchas a cable modem, media converter, or DSL modem (ADSL modem and thelike) must be connected to the broadband router. Further, it has notbeen possible to even access a web server without a personal computer orthe like. The broadband router is provided with a routing function forcontrolling data paths while converting between a private IP addressused on a local area network (LAN) and a global IP address used on theInternet, serving as a wide area network (WAN).

SUMMARY OF THE INVENTION

Therefore, the inventors of the present invention came up with a methodthat provides users with an easy way to access and browse data from aweb server using an image forming device. Here, a communication modulecapable of connecting to the Internet is incorporated in an imageforming device provided with an image forming function. The imageforming device acquires data from a web server via the communicationmodule and can print images based on the acquired data. This type ofmethod conveniently enables a user to acquire data from a web server asprinted material without requiring a personal computer or the like.

However, when employing a method to output data from a web server simplyby forming images (printing) on an image forming device, it is difficultfor the user to determine the data content to be printed prior toprinting. As a result, the user may print out data that is unnecessary.In other words, this type of image forming device is wasteful in its useof recording paper for printing and is unable to sufficient providerequired data to a user. Further, the outputting of inappropriate datacan cause the user distress. Therefore, these problems must be resolved.

In view of the foregoing, it is an object of the present invention toprovide an image forming device capable of outputting data provided on aweb server and required by a user by selectively forming images of thesame, and a method and program for controlling the image forming device.

In order to achieve the above and other objects, according to thepresent invention, there is provided an image forming device includingan image forming unit that forms images on a recording medium, acommunicating unit that performs bi-directional communications with aweb server provided on a wide area network, a data acquiring unit thatacquires web data from a web server corresponding to a specified addressvia the communicating unit, a control unit that controls the imageforming unit to form images based on the web data acquired by the dataacquiring unit, an identifying unit that identifies a type of the webdata, and a determining unit that determines whether or not to formimages based on the web data based on the type of the web data. Thecontrol unit prohibits the image forming unit from forming images basedon the web data when the determining unit determines that images shouldnot be formed based on the web data.

There is also provided an image forming device including an imageforming unit that forms images on a recording medium, a communicatingunit that performs bi-directional communications with a web serverprovided on a wide area network, a data acquiring unit that acquires webdata from the web server corresponding to a specified address via thecommunicating unit, a control unit that controls the image forming unitto form images based on the web data acquired by the data acquiringunit, a display unit that displays an outline of the web data, enablinga user to input an instruction while examining the displayed outline,and a user authorization determining unit that determines whether or notimages based on the web data should be formed according to theinstruction from the user. The control unit prohibits the image formingunit from forming images based on the web data when the userauthorization determining unit determines that images based on the webdata should not be formed.

Further, there is provided an image forming device including an imageforming unit that forms images on a recording medium, a communicatingunit that performs bi-directional communications with a web serverprovided on a wide area network, a data acquiring unit that acquires webdata from the web server corresponding to a specified address via thecommunicating unit, a control unit that controls the image forming unitto form images based on the web data, a memory that stores a pluralityof addresses, a storing unit that stores memo data inputted externallyin association with corresponding addresses into the memory, a displayunit that displays a list of the memo data, and a selection unit thatenables a user to select one of the memo data from the displayed list.The control unit controls the data acquiring unit to acquire web datafrom a web server corresponding to the address stored in associationwith the memo data that the user has selected.

There is also provided a control program of controlling an image formingdevice. The program includes the programs of a) acquiring web data froma web server corresponding to a specified address via a communicatingunit that performs bi-directional communications with the web serverprovided on a wide area network, b) identifying a type of the web data,c) determining whether or not to form images based on the web dataaccording to the type of the web data, and d) prohibiting an imageforming unit to form images based on the web data when it is determinedin the program c) that images should not be formed based on the webdata.

There is also provided a control method of controlling an image formingdevice. The control method includes the steps of a) acquiring web datafrom a web server corresponding to a specified address via acommunicating unit that performs bi-directional communications with theweb server provided on a wide area network, b) identifying a type of theweb data, c) determining whether to form images based on the web dataaccording to the type of the web data, and d) prohibiting an imageforming unit to form images based on the web data when it is determinedin the step c) that images should not be formed based on the web data.

There is also provided a control method of controlling an image formingdevice. The control method includes the steps of a) acquiring web datafrom a web server corresponding to a specified address via acommunicating unit that performs bi-directional communications with theweb server provided on a wide area network, b) a display unit thatdisplays an outline of the web data, enabling a user to input aninstruction while examining the displayed outline, c) determiningwhether or not images based on the web data should be formed accordingto the instruction from the user, and d) prohibiting an image formingunit to form images based on the web data when it is determined in thestep c) that images based on the web data should not be formed.

There is also provided a control method of controlling an image formingdevice. The control method includes the steps of a) displaying a list ofmemo data stored in a memory in association with correspondingaddresses, enabling a user to select one of the memo data from thedisplayed list, and b) acquiring data on a web server corresponding tothe address stored in association with the memo data that the user hasselected, via a communicating unit that performs bi-directionalcommunications with the web server provided on a wide area network.

BRIEF DESCRIPTION OF THE DRAWINGS

In the drawings:

FIG. 1 is a block diagram showing an example of using a facsimile deviceaccording to an embodiment of the present invention;

FIG. 2 is a perspective view showing an external construction of thefacsimile device;

FIG. 3 is an explanatory diagram showing an internal construction of thefacsimile device;

FIG. 4 is a block diagram showing an electrical configuration of thefacsimile device;

FIG. 5( a) is an explanatory diagram illustrating data structure of aRAM of a main unit shown in FIG. 4;

FIG. 5( b) is an explanatory diagram illustrating data structure of aROM of the main unit;

FIG. 5( c) is an explanatory diagram illustrating data structure of adestination data storage unit of the RAM of FIG. 5( a);

FIG. 6( a) is an explanatory diagram showing data structure in RAM a webprinting unit shown in FIG. 4;

FIG. 6( b) is an explanatory diagram showing data structure in a ROM ofthe web printing unit;

FIG. 6( c) is an explanatory diagram showing data structure of a URLdata storage unit of FIG. 6(a);

FIG. 6( d) is an explanatory diagram showing data structure of atransfer destination data storage unit of FIG. 6( a);

FIG. 7 is a flowchart showing a process executed by the CPU 111 in theweb printing unit for recording URL-memo data;

FIG. 8 is an explanatory diagram illustrating the data structure of theflag data of FIG. 6( b);

FIG. 9 is a flowchart representing a first URL inputting processaccording to the present embodiment;

FIG. 10 is an explanatory diagram showing the data structure of the URLFIFO;

FIG. 11 is a flowchart representing a second URL inputting processaccording to the present embodiment;

FIG. 12 is a flowchart representing a third URL inputting processaccording to the present embodiment;

FIG. 13 is a flowchart representing a web data outputting processaccording to the present embodiment;

FIG. 14 is a flowchart representing a communication-output processaccording to the present embodiment;

FIG. 15 is a flowchart representing a process to determine URL accessauthorization according to the present embodiment;

FIG. 16 is a flowchart representing a process to determine outputauthorization according to the present embodiment;

FIG. 17 is a flowchart representing a process to determine time outputauthorization according to the present embodiment;

FIG. 18 is a flowchart representing a process to determine answeringmachine output authorization according to the present embodiment;

FIG. 19 is a flowchart representing a process to determine keywordoutput authorization according to the present embodiment;

FIG. 20 is a flowchart representing a process to determine historyoutput authorization according to the present embodiment;

FIG. 21 is a flowchart representing a process to determine passwordoutput authorization according to the present embodiment;

FIG. 22 is a flowchart representing a process to determine manual outputauthorization according to the present embodiment;

FIG. 23 is a flowchart representing a first process to determineprinting capacity according to the present embodiment;

FIG. 24 is a flowchart representing a second process to determineprinting capacity according to the present embodiment;

FIG. 25 is a flowchart representing a third process to determineprinting capacity according to the present embodiment;

FIG. 26 is a flowchart representing an output process according to thepresent embodiment;

FIG. 27 is a flowchart representing a printing process according to thepresent embodiment; and

FIG. 28 is a flowchart representing an error process according to thepresent embodiment.

DESCRIPTION OF THE PREFERRED EMBODIMENT

Next, an image forming device according to a preferred embodiment of thepresent invention will be described while referring to the accompanyingdrawings.

FIG. 1 is a block diagram illustrating an example of using a facsimiledevice 1 applying the present invention. FIG. 2 is a perspective viewshowing the overall external configuration of the facsimile device 1.FIG. 3 is a side cross-sectional view showing the internal constructionof the facsimile device 1.

As shown in FIG. 1, the facsimile device 1 includes a circuit controller3 and a communication module 5. The circuit controller 3 is providedwith an external connection port 4. An analog line L1 (a telephone lineformed of either two or four leads) connects between the externalconnection port 4 and a telephone connection port on a splitter 8provided in a home office or other building.

The communication module 5 is provided with a WAN connection port 6 anda LAN connection port 7. The WAN connection port 6 is connected to anADSL modem 9 via a LAN cable L3. The LAN connection port 7 is connectedto a hub 11. The ADSL modem 9 is connected to an ADSL modem connectionport in the splitter 8 via a LAN cable L2.

LAN terminals 13 through 17 are connected to the hub 11. The LANterminals include a plurality of personal computers 13 and 14 capable ofperforming bi-directional communications, a printer 16, such as aninkjet printer or laser printer capable of connecting to a network, anIP telephone 15 capable of transmitting voice signals by InternetProtocol, and an Internet facsimile device 17 capable of connecting tothe Internet. In other words, the hub 11 is connected to a local areanetwork (LAN) provided in a building and configured of theabove-described LAN terminals 13 through 17.

The splitter 8 is a device used for ADSL well known in the art. Thesplitter 8 is configured to receive a transmission signal from asplitter 19 provided on the base station end. The transmission signalincludes a first signal of about 4 kHz or less superimposed on a secondsignal of a higher frequency for ADSL. The splitter 8 separates thefirst and second signals and outputs the first signal to the telephoneconnection port and the second signal to the ADSL modem connection port.The splitter 8 also superimposes signals received via these connectionports and transmits the superimposed signal to the splitter 19 on thebase station end.

That is, the facsimile device 1 of the present embodiment can connect toa subscriber telephone on a public communication network (that is, apublic switching telephone network: PSTN) using the circuit controller3. The facsimile device 1 can also connect to the Internet serving as awide area network (WAN) via the communication module 5 and the ADSLmodem 9.

Through operations of a router controller 101 (FIG. 4) provided in thecommunication module 5, the facsimile device 1 functions as a router forrouting data (IP packets) that is transmitted and received between acommunication device on the Internet (such as a web server 21) and theLAN terminals 13 through 17 on the LAN.

The facsimile device 1 of the present embodiment has a facsimilefunction, a printer function, and a copy function. The facsimilefunction optically scans images from an original document, convertsimage data representing the scanned image into facsimile data, andtransmits the facsimile data via the analog line L1 to an externalfacsimile device 23 connected to the public communication network. Thefacsimile function also receives facsimile data transmitted from theexternal facsimile device 23 via the public communication network andthe analog line L1, and forms images on a recording paper based on thefacsimile data.

The printer function is a function for forming images on a recordingpaper based on code data transmitted by a word processor or the personalcomputer 13 or 14. When the facsimile device 1 receives code data froman external personal computer via a PC interface 24 (FIG. 4) or from thepersonal computer 13 or 14 on the LAN via the communication module 5,the facsimile device 1 forms images based on the code data on recordingpaper. The copy function is a photocopying function for scanning imagesfrom an original document using a scanner 35 and a recording unit 37(described later) and forming images on recording paper based on theimage data.

As shown in FIG. 2, the facsimile device 1 having the functionsdescribed above includes an outer case 25, a handset 26 mounted on theside of the outer case 25, and an operating panel 27 provided on thefront portion of the top surface of the outer case 25. The operatingpanel 27 is provided with various operating keys 270 including numeralkeys 271 for inputting the telephone number (fax number) of otherparties, a start key 272, and a select key 273, and a liquid crystaldisplay (LCD) 274 for displaying data related to the various functions.

In addition, a first paper tray 29 for accommodating recording paper tobe fed into the device is provided on the top back portion of the outercase 25. A second paper tray 31 is provided above the first paper tray29 to enable the user to feed recording paper by hand. An originaldocument feed tray 33 is provided above the second paper tray 31 foraccommodating original documents to be scanned.

As shown in FIG. 3, the outer case 25 accommodates the scanner 35 forscanning images from an original document, the recording unit 37 forforming multicolor images on recording paper, and a circuit board (notshown) on which a CPU 39 (FIG. 4) is mounted for controlling the scanner35 and recording unit 37.

In the scanner 35, a document sensor (not shown) detects an originaldocument placed in the original document feed tray 33. A feed mechanismformed of a feed roller 41, a separating pad 43, and the like picks upthe original document one sheet at a time and feeds the document in adirection of an arrow A in FIG. 3. A conveying roller 45 conveys theoriginal document to a scanning unit 47. The scanning unit 47 scans theimages formed on the original document. After being scanned by thescanning unit 47, the original document is discharged by a dischargeroller 49 onto a first discharge tray 51 provided on the front of theouter case 25.

In addition to the document sensor described above, the scanner 35 isprovided with a leading edge sensor 53 for detecting the leading edge ofthe document and a trailing edge sensor 55 for detecting the trailingedge of the document. The CPU 39 regulates the document feeding processby controlling each unit in the scanner 35 based on detection resultsfrom these sensors 53, 55 in order to execute the operations of thescanner 35.

In the recording unit 37, a feed mechanism formed of a feed roller 57, aseparating pad 59, and the like picks up recording paper loaded ineither the first paper tray 29 or the second paper tray 31 one sheet ata time, and feeds the recording paper in a direction of an arrow B inFIG. 3. A conveying roller 61 conveys the sheet of recording paper to animage forming device 63. The image forming device 63 forms multicolorimages on the recording paper by using toner of a plurality of colors(in the present embodiment, cyan, magenta, yellow, and black). Afterpassing the image forming device 63, the recording paper is conveyeddownstream to a fixing device 65. The fixing device 65 fixes the tonerimage on the recording paper. After further passing through the fixingdevice 65, the recording paper is discharged by a discharge roller 67onto a second discharge tray 69 provided on the front of the outer case25.

The image forming device 63 operates a laser scanning device 71 toirradiate laser light on a photosensitive drum 72 and form electrostaticlatent images on the surface thereof. The laser scanning device 71includes a laser emitting unit 77 for emitting laser light based onimage data according to commands from the CPU 39, a lens 78 forreflecting laser light, a reflecting mirror 79 for guiding lightreflected by the lens 78 onto the photosensitive drum 72, and the like.The image forming device 63 further includes a toner tank 73 storingtoner. After an electrostatic latent image is formed on thephotosensitive drum 72, toner from the toner tank 73 is selectivelydeposited on the photosensitive drum 72. A transfer roller 75 applies anelectrical charge to the recording paper in order to transfer the tonerdeposited on the photosensitive drum 72 to the recording paper. Notethat the diagram of the image forming device 63 shown in FIG. 3 is aconceptual drawing for describing the functions of the image formingdevice 63. That is, the image forming device 63 is configured of animage forming device well known in the art for forming color tonerimages. A toner image for each color is formed as described above, andthe toner images are superimposed on one another to form a multicolorimage.

Next, the electrical configuration of the facsimile device 1 will bedescribed.

As shown in FIG. 4, the facsimile device 1 primarily includes the CPU39, a read only memory (ROM) 81, a random access memory (RAM) 83, thescanner 35, an encoder 85, the recording unit 37, a decoder 87, theoperating keys 270, the LCD 274, a modem 89, the circuit controller 3,the PC interface 24, an e-mail controller 91, and a function expansioninterface 93. All of these components are connected via a bus 95, anddefining a main unit 2. The communication module 5 is connected to thefunction expansion interface 93.

The CPU 39 serves as the control center of the facsimile device 1 byperforming overall control of the facsimile device 1. For example, theCPU 39 reads programs for control processes that are prestored in theROM 81 and executes processes, such as transmission and reception offacsimile data and as address entry, according to these programs.

As shown in FIG. 5( b), the ROM 81 stores a facsimile function programgroup 81 a, a printer function program group 81 b, a recording unitcontrol program 81 c, various other programs not shown in the drawing,and various data required when executing these programs.

The facsimile function program group 81 a is for operating the facsimiledevice 1 as a facsimile device. For example, the facsimile functionprogram group 81 a includes a reception program for forming images withthe recording unit 37 based on facsimile data that the circuitcontroller 3 receives from the external facsimile device 23.

The printer function program group 81 b is for operating the facsimiledevice 1 as a printer. For example, the printer function program group81 b includes a PC printing program for forming images using therecording unit 37 based on data that the communication module 5 receivesfrom the personal computer 13 or 14 on the LAN.

The recording unit control program 81 c is called by the above programsand the like.

As shown in FIG. 5( a), the RAM 83 functions as a work memory 83 a thatis necessary for performing various control processes, atransmission/reception data storing unit 83 b for storing facsimile dataand the like, and a destination data storage unit 83 c for storingdestination data related to the transmission destination of thefacsimile data.

As shown in FIG. 5( c), the destination data storage unit 83 c can storetelephone numbers as destination data for the transmission destinationof facsimile data and can also store e-mail addresses in associationwith these telephone numbers. That is, the facsimile device 1 is capableof storing both a telephone number and e-mail address for eachdestination in case of when another device (external facsimile device23) is not only capable of transmitting and receiving facsimile data viaa public communication network, but also is capable of transmitting andreceiving e-mail via the Internet.

The scanner 35 functions to scan an original document when copying ortransmitting facsimile data or the like. As described above, the scanner35 of the present embodiment is configured to pick up the originaldocument from the original document feed tray 33, scan the images withthe scanning unit 47, and output image data to the encoder 85 and thelike as scanning results.

The encoder 85 executes an encoding process for converting image datascanned by the scanner 35 into G3 compressed image data in a facsimileformat, and outputs the converted image data. The decoder 87 decodesimage data in the facsimile format for converting into image data thatcan be processed by the recording unit 37.

As described above, the recording unit 37 functions as a color laserprinter capable of forming color images. The recording unit 37 uses theimage forming device 63 to print color images on a recording paper basedon image data decoded by the decoder 87 and according to instructionfrom the CPU 39 executing the recording unit control program 81 c andoutputs the recording paper after the printing process.

The recording unit 37 is provided with a normal print mode and a quietprint mode capable of printing images with less noise than the normalprint mode. The recording unit 37 switches between these modes accordingto instructions from the CPU 39. The recording unit 37 is also capableof performing monochrome printing and can form images using only aspecified color of toner according to instruction from the CPU 39.

The operating keys 270 function to input instruction signals into thedevice (the CPU 39 and the like) based on operations by the user inorder to perform such operations as entering destination data,specifying a destination, and inputting or selecting memo data.

The LCD 274 functions as a display device for displaying variousmessages and the like, including error messages and messages for guidingthe user steps of an operation. The LCD 274 of the present embodimentalso functions as a touch panel. When the user is specifying adestination for facsimile data or entering destination data, the LCD 274displays one-touch keys and acquires and inputs user-inputted data intothe device.

The modem 89 functions to transmit and receive facsimile data betweenthe external facsimile device 23 connected to the public communicationnetwork via the circuit controller 3 and the splitter 8. The circuitcontroller 3 functions to transmit dialing signals to the publiccommunication network, to answer calling signals from the publiccommunication network, and the like. For example, the circuit controller3 connects to and can communicate with the external facsimile device 23via the public communication network.

The PC interface 24 is employed when connecting a personal computer tothe facsimile device 1 via a parallel interface or the like andfunctions to receive code data and the like from the personal computers13 and 14. The e-mail controller 91 transmits and receives facsimiledata via e-mail by transmitting and receiving e-mail between an externalcommunication device connected to the Internet.

In other words, the e-mail controller 91 converts binary image data in afax format, which was encoded by the encoder 85, into text-coded imagedata, and adds header data including the e-mail address for thetransmission destination and the like to the converted image data. Inthis manner, the e-mail controller 91 converts the image data in a faxformat into image data in an e-mail format that can be transmitted ase-mail. Similarly, the e-mail controller 91 converts image data in ane-mail format received via the Internet and the communication module 5back to image data in a fax format. The image data converted back in afax format in this manner is then decoded by the decoder 87 so that therecording unit 37 can output, and the recording unit 37 prints out thedata on recording paper.

The function expansion interface 93 is a serial interface, such as AIO(Analog Input/Output) or RS232C. The separate communication module 5including the router controller 101 can be detachably connected to thefunction expansion interface 93. The communication module 5 isaccommodated in the outer case 25 of the facsimile device 1, as shown inFIG. 3.

The communication module 5 includes the router controller 101, a hub103, an IP telephone unit 105, a wireless processing unit 107, a webprinting unit 110, an interface connecting terminal 109 connected to therouter controller 101, and the like. The communication module 5 isconnected to the function expansion interface 93 via the interfaceconnecting terminal 109.

The router controller 101 is for transmitting and receiving IP packetsbetween a communication device on the Internet via the ADSL modem 9, andfunctions as a broadband router well known in the art, having an IPmasquerade function and a routing function. Using the IP masqueradefunction, the router controller 101 can convert both ways between aprivate IP address used on a LAN and a global IP address used on a WAN(the Internet in the present embodiment). Using the routing function,the router controller 101 can connect a terminal on the LAN end to acommunication device on the WAN end (the web server 21) to performbi-directional communications.

For example, by transmitting and receiving data with the IP telephoneunit 105, the wireless processing unit 107, and the web printing unit110 via the hub 103, the router controller 101 can connect the IPtelephone unit 105, the wireless processing unit 107, and the webprinting unit 110 to the Internet via the ADSL modem 9 for performingbi-directional communications.

Further, by communicating with the LAN terminals 13 through 17 on theLAN connected to the LAN connection port 7 via the hub 103, the routercontroller 101 can connect the LAN terminals 13 through 17 to theInternet for performing bi-directional communications. In other words,the router controller 101 controls communication routes and transmitsdata received from the web server 21 to the destination LAN terminals 13through 17 for example.

In addition, the router controller 101 can communicate with the CPU 39of the main unit 2 via the function expansion interface 93. In otherwords, the LAN terminals 13 through 17, the IP telephone unit 105, thewireless processing unit 107, and the web printing unit 110 cancommunicate bi-directionally with the CPU 39 of the main unit 2 via therouter controller 101 and the function expansion interface 93. Forexample, if the CPU 39 acquires print code data from the personalcomputer 13 or 14 on the LAN via the router controller 101, then the CPU39 executes the printer function program, calls the recording unitcontrol program 81 c within this program, and controls the recordingunit 37 to form images based on the data.

The IP telephone unit 105 connected to the router controller 101 via thehub 103 is configured to store voice signals in IP packets and executevoice communications (a call) with an external IP telephone via theInternet.

The wireless processing unit 107 functions to perform wirelesscommunications between an external wireless communication device and thefacsimile device 1. The wireless processing unit 107 can connect anexternal wireless communication device to the components in thefacsimile device 1 for performing bi-directional communications using awireless connecting method that conforms with the Bluetooth standard(close-range wireless communication standard) or the IrDA standard(infrared communication standard). For example, the LAN terminals 13through 17 can each be connected to the facsimile device 1 by a wiredconnecting method using the LAN connection port 7 connected to the hub103. In addition, the LAN terminals 13 through 17 can be connected tothe facsimile device 1 by a wireless connecting method using thewireless processing unit 107.

The web printing unit 110 includes a CPU 111, a ROM 113, a RAM 115, anetwork interface 117, and the like. The web printing unit 110 canconnect itself to the Internet or communicate with the CPU 39 of themain unit 2 by communicating with the router controller 101 via thenetwork interface 117.

FIG. 6( a) is an explanatory diagram showing the data structure in theRAM 115 of the web printing unit 110. FIG. 6(b) is an explanatorydiagram showing the data structure in the ROM 113.

As shown in FIG. 6( a), the RAM 115 in the web printing unit 110functions as a work memory 115 a, a transmission/reception data storageunit 115 b for storing data downloaded from the web server 21 and thelike, a URL data storage unit 115 c for storing URL (Uniform ResourceLocator) data indicating the address of the web server 21, a transferdestination data storage unit 115 d for storing transfer destinationdata regarding the destination to which data is transferred when using atransfer function (described later), an access prohibited database 115 e(described later), a keyword database 115 f, a history data storage unit115 g, a log storage unit 115 h, and the like.

As shown in FIG. 6( c), the URL data storage unit 115 c can store aplurality of entries of memo data and scheduler settings data inassociation with the URL representing the address for accessing thedata. In other words, the communication module 5 stores memo data, whichthe user inputs externally through operations on the operating panel 27and the like, in association with corresponding URLs into theassociations in the URL data storage unit 115 c. As is well known in theart, a URL is address data configured of a server address, directorydata, filename, and the like.

Next, a process for storing URL-memo data will be described withreference to the flowchart of FIG. 7. The process for storing URL-memodata is executed by the CPU 111 in the web printing unit 110 for storingmemo data in association with corresponding URL in the above-describedmanner.

As shown in FIG. 7, when the process for storing URL-memo data isstarted, first in S101, the CPU 111 transmits an input instruction tothe main unit 2 via the function expansion interface 93, controlling theLCD 274 to display input instruction prompting the user to input a URLand memo data. In S103, the CPU 111 determines whether or not aninstruction for storing a URL and memo data was received from theoperating panel 27 via the function expansion interface 93. If not(S103:NO), then the process waits until the instruction is received. Onthe other hand, if so (S103:YES), then in S105, the CPU 111 acquires theURL and the memo data, which have been input from the operating panel27, from the main unit. Next in S107, the CPU 111 associates the URLwith the memo data, and stores the URL and the memo data in the URL datastorage unit 115 c, and then the process ends.

Here, the memo data is provided to enable the user to quickly determinea desired URL, since it is difficult to determine what home page toaccess only by the URL display and moreover it is not easy to search fora desired URL because the display area of the LCD 274 is limited.

As shown in FIG. 6( d), the transfer destination data storage unit 115 dis configured to store address data for a printer transfer and addressdata for a personal computer transfer (described later). The transferdestination data storage unit 115 d stores a port number along with aprivate IP address on the LAN as the address data for printer transfersand personal computer transfers.

As shown in FIG. 6( b), the ROM 113 in the web printing unit 110 storesa program group 113 a for a web printing function, flag data 113 b, andthe like. The program group 113 a are for acquiring data from the webserver 21 and for controlling the recording unit 37 of the facsimiledevice 1 to print the acquired data. The flag data 113 b representsoperating conditions of the web printing function.

More specifically, the web printing unit 110 includes a printingfunction for controlling the recording unit 37 to print images based ondata downloaded from the web server 21 via the router controller 101; asaving function for temporarily saving data in the RAM 115; a printertransferring function for transferring downloaded data to the printer 16(a printer identified by address data stored in the transfer destinationdata storage unit 115 d as the printer transfer destination) connectedto the LAN via the LAN connection port 7; a personal computertransferring function for transferring downloaded data to the personalcomputers 13 and 14 connected to the LAN via the LAN connection port 7;a monochrome printing function for instructing the recording unit 37 toprint monochrome images based on downloaded data; a quiet printingfunction for controlling the recording unit 37 to print images based onthe downloaded data in the quiet print mode for suppressing device noiseduring the printing process; a log saving function for saving log datafor various processes executed by the web printing unit 110; and anerror data displaying function for displaying error messages on the LCD274. These functions are implemented by the program group 113 a storedin the ROM 113. The functions can be toggled ON and OFF based on flagsset in flag setting data stored in the RAM 115. Details will bedescribed below.

The web printing unit 110 stores flag setting data into the RAM 115according to prescribed conditions in a following manner. FIG. 8 is anexplanatory diagram illustrating the data structure of the flag data 113b stored in the ROM 113. According to prescribed conditions, the webprinting unit 110 selects one of operating modes shown in FIG. 8. Theoperating modes include a “normal” operating mode, a “URL access notauthorized” operating mode, a “cancel print” operating mode, a “passworderror” operating mode, a “keyword error” operating mode, a “same contentdetected” operating mode, a “nighttime print” operating mode, an“answering machine” operating mode, a “large volume monochrome printing”operating mode, an “out-of-paper error” operating mode, and an“out-of-toner error” operating mode.

Then, the web printing unit 110 retrieves function values (hereinafterreferred to as “flag values”) of the selected operating mode, and storesthe retrieved flag values into the RAM 115 as the flag setting data. Theweb printing unit 110 operates the function (ON) when the flag value is“1” or greater and prevents operation of the function (OFF) when theflag value is “0”. The asterisk (*) symbol appearing in FIG. 8 indicatesthat the flag value stored as the flag setting data prior to selectingthe operating mode cannot be overwritten.

Next, various processes (the program group 113 a) executed by the CPU111 will be described with reference to FIGS. 9 through 28.

Immediately after the facsimile device 1 is powered ON, the CPU 111executes the first URL inputting process (FIG. 9), a second URLinputting process (FIG. 11), and a third URL inputting process (FIG.12).

As shown in FIG. 9, when the first URL inputting process starts, firstin S110, the CPU 111 determines whether or not a web print key (notshown) provided on the operating panel 27 has been pressed based oninstruction signals transmitted from the operating panel 27. If not(S110:NO), the process waits until the web print key is pressed. If so(S110:YES), then in S120, the web printing unit 110 displays an inputprompt on the LCD 274 provided on the operating panel 27. The inputprompt enables a user to input a desired URL.

Subsequently, in S121, the CPU 111 determines whether or not aninstruction signal to display a URL list was received from the operatingpanel 27. If not (S121:NO) then in S130, the CPU 111 determines whetheror not an input complete signal indicating the user has completedinputting a URL character string was received from the operating panel27. Here, both the instruction signal and the input complete signal fromthe operating panel 27 are received via the function expansion interface93, the router controller 101, the hub 103, and the network interface117.

If the input complete signal was received in S130 (S130:YES), this meansthat a URL has been completely inputted at the input prompt, then inS140, data representing the URL inputted by the user is acquired fromthe main unit 2. Then, the process proceeds to S150, where the data(URL) is stored in the URL FIFO.

FIG. 10 is an explanatory diagram showing the data structure of the URLFIFO. The URL FIFO is a FIFO (first in first out) storage unit storingentries of URLs and used to access the web server 21 at each URL inorder of entry to acquire data on the web server 21. The URL FIFO isprovided in the work memory 115 a and stores URLs in association withcorresponding memo data. After the URL and memo data have been enteredinto the URL FIFO, the CPU 111 ends the first URL inputting process.

On the other hand, if the CPU 111 determines in S121 that theinstruction signal for displaying a URL list was received (S121:YES),then in S123, the CPU 111 retrieves the URL and memo data from the URLdata storage unit 115 c and a log storage unit 115 h (described later),and displays a list of this URL and memo data on the LCD 274. This listis displayed approximately in the format shown in FIG. 6( c).

Next in S125, the CPU 111 determines whether or not a selection completesignal was received from the operating panel 27. The selection completesignal indicates that a URL was selected from the list. If not(S125:NO), then the process waits until the selection complete signal isreceived. If so (S125:YES), then in S127, the CPU 111 extracts selectiondata relating to the selected URL from the operating panel 27. Theprocess proceeds to S150, where the CPU 111 stores the selected URL andmemo data in the URL FIFO, and then the first URL inputting processends.

Next, the second URL inputting process will be described with referenceto the flowchart of FIG. 11. When the second URL inputting processstarts, first in S210, the CPU 111 retrieves scheduler setting data fromthe URL data storage unit 115 c. Next in S220, the CPU 111 determineswhether or not the scheduler setting data conforms to the current dateand time.

For example, scheduler setting data stored in association with thetopmost URL in FIG. 6( c) indicates that data is to be obtained from theweb server 21 on the 15^(th) of each month. Hence, if the CPU 111compares the scheduler setting data (data representing the date) withthe current date and time, and determines that the two match, then theCPU 111 determines that there is a URL conforming to the dataacquisition schedule (S220:YES).

Similarly, scheduler setting data stored in association with the URL ofthe second entry in FIG. 6( c) indicates that data is to be acquiredfrom the web server 21 on Thursday of each week. If the CPU 111 comparesthis scheduler setting data (data indicating the day of the week) withthe current date and time (the current day of the week), and determinesthe two days of the week match, then the CPU 111 determines that thereis a URL conforming to the data acquisition schedule (S220:YES).

Further, settings data stored in association with the URL of the thirdentry in FIG. 6( c) indicates that data is to be acquired from the webserver 21 everyday at 10:00. In S220, the CPU 111 compares the schedulersetting data to the current date and time. If the two times match, thenthe CPU 111 determines that there is a URL conforming to the dataacquisition schedule (S220:YES).

In the process described above, the CPU 111 compares all schedulersetting data stored in the URL data storage unit 115 c to the currentdate and time.

If the CPU 111 determines in S220 that a URL matches the current dateand time in the above-described manner (S220:YES), then the processproceeds to S230. On the other hand, if there is no URL that matches thecurrent date and time (S220:NO), then the operation of S220 isrepeatedly executed until a URL conforming to the current date and timeappears.

In S230, the URL is retrieved from the URL data storage unit 115 c, andin S240, the URL and memo data are stored in the URL FIFO. Then, thepresent process ends. After ending the process, the CPU 111 againexecutes the second URL inputting process.

Next, the third URL inputting process will be described with referenceto the flowchart of FIG. 12.

When the third URL inputting process starts, first in S310, the CPU 111determines whether or not update data for the web server 21 is receivedfrom an external administrative server via the router controller 101.This process assumes that a server exists for managing update data forthe web server 21. By pre-recording settings of a URL for whichprovision of update data is desired on the administrative server, updatedata will be transferred from the administrative server each time dataon the web server 21 corresponding to that URL is updated.

If the CPU 111 determines that update data has been received (S310:YES),then the process proceeds to S320. On the other hand, if not (S310:NO),then the process waits until a positive determination is made in S310.In S320, the CPU 111 extracts the URL and memo data for the web server21 from the received update data, and in S330, the CPU 111 stores theURL and memo data extracted from the update data into the URL FIFO.Then, the present process ends. As with the first and second URLinputting processes described above, after ending the third URLinputting process, the CPU 111 again executes the third URL inputtingprocess. By executing the second and third URL inputting processes inthe present embodiment, the communication module 5 automaticallyacquires data on the web servers of the registered URLs (the URLs storedin the URL data storage unit 115 c or the URLs recorded on theadministrative server) at prescribed intervals (on a prescribed date andtime or when update data is acquired).

Next, a web data outputting process will be described with reference tothe flowchart of FIG. 13. The web data outputting process is executed bythe CPU 111 after the power is turned ON.

When the web data outputting process starts, first in S410, the CPU 111determines whether or not a web printing function stop command has beeninput. Here, the web printing function stop command indicates to stopthe web printing function and can be input by a user pressing a webprinting function stop key provided on the operating panel 27. If so(S410:YES), then the present process ends. On the other hand, if not(S410:NO), then the CPU 111 determines in S420 whether or not a URL isbeing stored in the URL FIFO.

If not (S420:NO), then the process returns to S410. If so (S420:YES),then the CPU 111 executes a communication-output process in S430, andthe process returns to S410.

The communication-output process executed in S430 will be described withreference to the flowchart of FIG. 14.

When the communication-output process starts, in S510, the CPU 111 setsflag setting data. More specifically, the CPU 111 retrieves flag data ofthe “normal” operating mode (FIG. 8) from the ROM 113, and then storesthe retrieves flag data in the work memory 115 a as the flag settingdata.

Then in S520, the CPU 111 reads URL and memo data from the URL FIFO. InS530, the CPU 111 transmits the URL and the memo data to the main unit 2via the function expansion interface 93, and displays the URL and memodata on the LCD 274. In S540, the CPU 111 executes a process todetermine URL access authorization.

The process to determine URL access authorization is executed to preventdata acquisition and printing from URLs stored in the access prohibiteddatabase 115 e. The access prohibited database 115 e stores URLs of webservers 21 for which access is prohibited. Details of the process todetermine URL access authorization will be described with reference tothe flowchart of FIG. 15.

When the process to determine URL access authorization starts, in S610,the CPU 111 determines whether or not the URL read from the URL FIFO hasbeen checked against all URLs stored in the access prohibited database115 e (FIG. 6( a)). If so (S610:YES), then the present process ends. Ifnot (S610:NO), then in S620, the CPU 111 reads a URL that has not bechecked against from the access prohibited database 115 e. In S630, theCPU 111 determines whether or not the URL read in S620 matches to theURL read in S520. If not (S630:NO), then the process returns to S610,where the CPU 111 again determines whether or not the URL read from theURL FIFO has been checked against all URLs stored in the accessprohibited database 115 e.

If it is again determined in S610 that the URL from the URL FIFO has notbeen checked against all URLs in the access prohibited database 115 e(S610:NO), then in S620 the CPU 111 reads the next URL from the accessprohibited database 115 e, and performs a comparison with this URL inS630.

If it is determined in S630 that the URL read from the URL FIFO matchesa URL stored in the access prohibited database 115 e (S630:YES), thismeans that acquiring and printing the data at this URL is prohibited,and in S640, the CPU 111 reads flag data for the “URL access notauthorized” operating mode (FIG. 8), and overwrites the flag settingdata in the work memory 115 a. Then, the present process ends.

That is, if the CPU 111 determines in S630 that the data to bedownloaded is data not authorized for acquisition and printing(S630:YES), then in S640 the CPU 111 changes the flag value of theprinting function from “1” to “0” by overwriting the flag setting datafor the “normal” operating mode written in S510 with the flag data forthe “URL access not authorized” operating mode, thereby turning off theprinting function. In this way, it is possible to determine whether dataon the web server 21 at a URL read from the URL FIFO cannot be printedprior to acquiring the data. Here, the URL check performed in S630 canattempt to match all data in the URLs or only a portion of the URLs,such as the server address, or check for the existence of an upper-leveldirectory keyword.

After ending the process to determine URL access authorization of FIG.15 in S540 of the communication-output process of FIG. 14, the CPU 111determines in S550 whether or not the flag data for the “URL access notauthorized” operating mode has been set as the flag setting data. If so(that is, if the CPU 111 determines that access is prohibited)(S550:YES), the CPU 111 skips the processes in S560 through S580, andthe process jumps to S590. On the other hand, if not (that is, if thataccess is not prohibited) (S550:NO), then in S560, the CPU 111 downloadsdata specified by the URL from the web server 21 via the routercontroller 101.

After the download is completed in S560, the CPU 111 executes a processto determine output authorization in S570 and a process to determinetime output authorization in S580, and then the process proceeds toS590. Details of the processes executed in S570 and S580 will bedescribed.

First, the process to determine output authorization executed in S570will be described with reference to the flowchart of FIG. 16. As shownin FIG. 16, when the process to determine output authorization starts,in S710, the CPU 111 executes a process to determine time outputauthorization. As shown in the flowchart of FIG. 17, when the process todetermine time output authorization is started, first in the S713, theCPU 111 determines whether or not the current time is nighttime bycomparing time predefined as nighttime to the current time. If not(S713:NO), then the present process ends. On the other hand, if so(S713:YES), then in S715, the CPU 111 reads flag data for the “nighttimeprint” operating mode from the ROM 113 (FIG. 8), and sets the quietprinting function to ON by overwriting this flag data with the flagsetting data in the RAM 115. Then the process ends.

After ending the process to determine time output authorization in S710(FIG. 16), the CPU 111 executes in S720 a process to determine answeringmachine output authorization. As shown in the flowchart of FIG. 18, whenthe process to determine answering machine output authorization isstarted, first in S723, the CPU 111 determines whether or not theanswering machine function of the facsimile device 1 is set to ON.

Here, when the user inputs an instruction to execute the answeringmachine function by pressing an answering machine key (not shown)provided on the operating panel 27 of the facsimile device 1, theanswering machine function for announcing the user's absence in responseto a call from an external telephone is set to ON. This answeringmachine function is maintained in the ON state until the user inputs aninstruction to cancel the answering machine function by once againpressing the answering machine key.

If the CPU 111 determines in S723 that the answering machine function isnot ON (S723:NO), then the CPU 111 ends the present process. On theother hand, if the CPU 111 determines in S723 that the answering machinefunction is ON (S723:YES), then in S725, the CPU 111 reads flag data forthe “answering machine” operating mode from the ROM 113 (FIG. 8), andoverwrites the flag setting data in the RAM 115 with this flag data.Then, the present process ends.

When the flag data of the “answering machine” operating mode is set tothe flag setting data in the above-described operation, then the flagvalue for the printing function is maintained “0” even if the flagsetting data is subsequently overwritten in another process. In otherwords, the CPU 111 of the communication module 5 maintains the printingfunction in an OFF state by maintaining the flag value for the printingfunction at “0” while the answering machine function is ON, anddetermines that images based on downloaded data should not be printed.By overwriting the flag data for the “answering machine” operating modewith the flag setting data in S725, the CPU 111 also sets the PCtransfer function to ON, so that downloaded data will be stored in arecording medium (hard disk or the like) of a personal computer at thetransfer destination.

After ending the process to determine answering machine outputauthorization in S720 of FIG. 16, the process proceeds to S730, wherethe CPU 111 reads output-authorization setting data from the RAM 115.The output-authorization setting data includes primarily a keywordsearch setting data, a history search setting data, and a manual settingdata. The keyword search setting data represents whether or not toconduct a process to determine keyword output authorization (FIG. 19).The history search setting data represents whether or not to perform aprocess to determine history output authorization (FIG. 20). The manualsetting data represents whether or not to perform a process to determinemanual output authorization. The user can overwrite theoutput-authorization setting data by performing operations on theoperating panel 27.

After S730, in S740 the CPU 111 determines whether or not the keywordsearch setting is ON based on the output-authorization setting data. Ifnot (S740:NO), then the process proceeds to S750. If so (S740:YES), thenin S745, the CPU 111 executes the process to determine keyword outputauthorization.

The process to determine keyword output authorization is for identifyingdata content based on keywords stored in the keyword database 115 f. Thekeyword database 115 f stores both rejection keywords for identifyingdownloaded data with content that should not be printed and requiredkeywords for identifying downloaded data with content that should beprinted.

As shown in FIG. 19, when the process to determine keyword outputauthorization starts, first in S810, the CPU 111 determines whether ornot a search has been conducted for all rejection keywords. If not(S810:NO), then in S820, the CPU 111 reads one rejection keyword not yetsearched for, and searches for this rejection keyword in data downloadedfrom the web server 21.

Next in S830, the CPU 111 determines whether or not the rejectionkeyword was found in the data. If the rejection keyword was found(S830:YES), this means that the downloaded data is of a type that shouldnot be printed. Then the process proceeds to S870, where the flag datafor the “keyword error” operating mode (FIG. 8) is read from the ROM113, and the print function is set to OFF and the PC transfer functionis set to ON by overwriting this flag data with the flag setting data inthe RAM 115. Then, the process to determine keyword output authorizationends.

If the CPU 111 determines in S830 that the rejection keyword was notfound (S830:NO), then the process returns to S810. If the CPU 111determines in S810 that searches have been made for all rejectionkeywords (S810:YES), then in S815, the CPU 111 determines whether or notrequired keywords are stored in the keyword database 115 f. If not(S815:NO), then the process to determine keyword output authorizationends without overwriting the flag setting data. On the other hand, if so(S815:YES), then the CPU 111 determines in S840 whether or not a searchhas been performed on all required keywords. If not (S840:NO), then inS850, the CPU 111 reads one required keyword that has not been searchedfor from the keyword database 115 f, and searches the data downloadedfrom the web server 21 for this required keyword.

Next in S860, the CPU 111 determines in S860 whether or not the requiredkeyword was found in the downloaded data. If not (S860:NO), then theprocess returns to S840. If the CPU 111 determines in S840 that thedownloaded data has been searched for all required keywords (S840:YES),then the process proceeds to S870. If the CPU 111 determines in S860that the required keyword was found (S860:YES), then the process todetermine keyword output authorization ends without resetting the flagsetting data in S870.

After completing the process to determine keyword output authorizationin S745 (FIG. 16), the process proceeds to S750, where the CPU 111determines whether or not the history search setting is set to ON basedon the output-authorization setting data. If not (S750:NO), then theprocess advances to S760. If so (S750:YES), then in S755, the CPU 111executes a process to determine history output authorization.

FIG. 20 is a flowchart represents the process to determine historyoutput authorization. The process to determine history outputauthorization is for determining whether or not data downloaded from theweb server 21 has already been printed, that is, whether or not the datais of a type corresponding to an image printed by the recording unit 37previously. This determination is made based on history stored in thehistory data storage unit 115 g (FIG. 6). The history data storage unit115 g stores, for each printed data, a source URL, a data amount, issuedate and time, and the like.

As shown in FIG. 20, when the process to determine history outputauthorization is started, first in S910, the CPU 111 acquires historyidentifying data from the downloaded data. The history identifying datamay be, for example, a source URL of data, a data amount of downloadeddata, issue date and time of data, and the like.

Next in S920, the CPU 111 determines whether or not all history datastored in the history data storage unit 115 g has been checked againstthe history identifying data. If so (S920:YES), then the process todetermine history output authorization ends. If not (S920:NO), then inS930, the CPU 111 reads one entry of history data from the history datastorage unit 115 g, and the process proceeds to S940.

In S940, the CPU 111 determines whether or not the history data hasexpired. For example, the CPU 111 determines that the history data hasexpired if a prescribed period of time has passed since the print dateand time of data included in the history data. If the history data isdetermined to have expired (S940:YES), then in S945, the CPU 111 deletesthis history data from the history data storage unit 115 g,Subsequently, the process returns to S920.

If the CPU 111 determines in S940 that the history data has not expired(S940:NO), then in S950, the CPU 111 determines whether or not thehistory data read in S930 matches the history identifying data. If not(S950:NO) then the process returns to S920. On the other hand, if so(S950:YES), this means that the downloaded data has already beenprinted, and the process proceeds to S960.

In S960, the CPU 111 extracts flag data for the “same content detected”operating mode (FIG. 8), and overwrites the flag setting data in the RAM115 with this data, thereby turning OFF the print function and turningON the PC transfer function. Subsequently, the CPU 111 ends the processto determine history output authorization.

After the process to determine history output authorization of FIG. 20ends, the process proceeds to S760 (FIG. 16). In S760, the CPU 111determines whether or not a password output is required. That is, theCPU 111 determines whether or not the downloaded data to be outputtedincludes password data. If the downloaded data does not include passworddata, then password input is unnecessary (S760:NO), and the processjumps to S770. On the other hand, if the downloaded data includespassword data, then password input is necessary (S760:YES), and theprocess proceeds to S765, where the CPU 111 executes a process todetermine password output authorization.

Here, the facsimile device 1 of the present embodiment is configuredsuch that a password can be set for specific types of data in order toswitch the printing function ON and OFF. For example, if password datais stored for data identified as data having a required keyword, then inS760 the CPU 111 determines that a password is required and executes theprocess to determine password output authorization in S765. In addition,it is possible to prompt for password input when data includesadult-oriented content.

FIG. 21 is a flowchart representing the process to determine passwordoutput authorization executed in S765 of FIG. 16. As shown in FIG. 21,when this process starts, in S1010, the CPU 111 initializes a passwordverification number to zero. In S1020, the CPU 111 displays the messageon the LCD 274, prompting the user to input a password. In S1030, theCPU 111 determines whether or not the user has input a password throughoperations on the operating panel 27, based on signals received from theoperating panel 27 (operating data).

If not (S1030:NO), the process waits until a password is input. If so(S1030:YES), in S1040, the CPU 111 receives the password via thefunction expansion interface 93. In S1050, the CPU 111 determineswhether the received password matches a password set in the downloadeddata. If so (S1050:YES), this means that the user is successfullyauthorized, and then the CPU 111 ends the process to determine passwordoutput authorization. On the-other hand, if not (S1050:NO), this meansthat the user fails authorization. Then in S1060, the CPU 111 determineswhether or not the password verification number is less than apredetermined value.

If the password verification number is less than the predetermined value(S1060:YES), then in S1065, the CPU 111 increments the passwordverification number by 1, and the process returns to S1020. On the otherhand, if the CPU 111 determines in S1060 that the password verificationnumber is not less than the predetermined value (S1060:NO), then inS1070, the CPU 111 reads the flag data for the “password error”operating mode (FIG. 8) from the 113, and turns OFF the printingfunction and turns ON the saving function by overwriting the flagsetting data in the RAM 115 with this flag data. Subsequently, the CPU111 ends the process to determine password output authorization.

After the process to determine password output authorization ends, theprocess proceeds to S770 of FIG. 16. In S770, the CPU 111 determineswhether or not the manual setting is ON based on theoutput-authorization setting data. If not (S770:NO), then the CPU 111ends the process to determine output authorization. On the other hand,if so (S770:YES), then in S773, the CPU 111 determines whether or notthe print function is OFF. This determination is made by determiningwhether or not the flag value corresponding to the print function in theflag settings is 0”.

If the CPU 111 determines in S773 that the print function is OFF (thatis, the flag value is “0”) (S773:YES), then the process to determineoutput authorization ends. On the other hand, if it is determined inS773 that the print function is not OFF (the flag value is “1”)(S773:NO), then the process advances to S775, where the CPU 111 executesa process to determine manual output authorization. FIG. 22 is aflowchart representing the process to determine manual outputauthorization.

As shown in FIG. 22, when the process to determine manual outputauthorization starts, first in S1110, the CPU 111 displays, on the LCD274, an outline of the downloaded data and a print confirmation messageprompting the user whether or not to print the downloaded data, bytransferring data for displaying the outline data and the printconfirmation message on the LCD 274 via the function expansion interface93. Here, the CPU 111 can display a reduced image representing thedownloaded data in the HTML format on the LCD 274 as the outline data orcan display the source URL for the data and memo data described above.The CPU 111 can also notify the user of the data content by displayingboth types of data at the same time.

Next in S1120, the CPU 111 determines whether or not an instructionsignal inputted by the user through operations of the operating panel 27is received. If not (S1120:NO), the process waits until a positivedetermination is made in S1120. If so (S1120:YES), then in S1130, theCPU 111 determines whether or not the instruction signal is printauthorization signal authorizing the printing process. If theinstruction signal is the print authorization signal (S1130:YES), thenthe present process ends. If the instruction signal is not the printauthorization signal (S1130:NO), then in S1140, the CPU 111 reads theflag data for the “print cancel” operating mode (FIG. 8), and turns OFFthe print function by overwriting the flag setting data in the RAM 115with this flag data. Subsequently, the CPU 111 ends the process todetermine manual output authorization. When the process to determinemanual output authorization ends, the process to determine outputauthorization of FIG. 16 ends simultaneously.

After ending the process to determine output authorization of FIG. 16,the CPU 111 executes a first process to determine printing capacity inS580 of the communication-output process of FIG. 14. FIG. 23 is aflowchart representing the first process to determine printing capacity.

When the first process to determine printing capacity of FIG. 23 starts,first in S1210, the CPU 111 determines whether or not recording paperthat can be supplied to the recording unit 37 exists in the first papertray 29 or the second paper tray 31. If not (S1210:NO), then in S1220,the CPU 111 extracts flag data for the “out-of-paper error” operatingmode (FIG. 8) from the ROM 113, and turns OFF the print function byoverwriting the flag setting data in the RAM 115 with this flag data.Subsequently, the present process ends.

On the other hand, if the CPU 111 determines in S1210 that recordingpaper exists (S1210:YES), then in S1230, the CPU 111 determines whetheror not toner exists for all colors to form an image on recording paper.If so (S1230:YES), then the process advances to S1260. If not(S1230:NO), then the process advances to S1240, where the CPU 111executes a second process to determine printing capacity. FIG. 24 is aflowchart representing the second process to determine printingcapacity.

As shown in FIG. 24, when the second process to determine printingcapacity starts, first in S1310, the CPU 111 determines whether or notthe downloaded data is monochrome data. If not (S1310:NO), this meansthat the data is color data, and then in S1320, the CPU 111 determineswhether or not the color substitution setting is set to ON based on acolor substitution setting data. Here, the color substitution settingsdata indicates whether or not to operate the monochrome printingfunction (ON) to print data originally intended to be printed asmulticolor images in a single color when there is insufficient toner forone of the cyan, magenta, yellow, or black colors.

If it is determined in S1320 that the color substitution setting is ON(S1320:YES), then in S1330, the CPU 111 sets the flag value for themonochrome printing function in the flag setting data stored in the RAM115 to “1,” thereby turning ON the monochrome printing function. Theprocess then advances to S1340. On the other hand, if it is determinedin S1310 that the downloaded data is monochrome data (S1310:YES), thenthe process advances to S1340.

In S1340, the CPU 111 determines whether or not black toner exists. Ifso (S1340:YES), then the present process ends. On the other hand, if not(S1340:NO), then in S1350, the CPU 111 determines whether or not thecolor substitution setting is ON.

If so (S1350:YES), then in S1360, the CPU 111 selects the toner havingthe greatest remaining amount between magenta and cyan, and sets theflag value for the monochrome printing function in the flag settingstored in the RAM 115 to “2” or “4”. In the present embodiment, if theflag value for the monochrome printing function is set to “2”, then themonochrome printing function for printing with cyan toner is set to ON.If the flag value for f the monochrome printing function is set to “4”,then the monochrome printing function for printing with magenta toner isset to ON. Afterwards, the present process ends.

On the other hand, if it is determined in either S1320 or S1350 that thecolor substitution setting is not ON (S1310:NO, S1350:NO), the processproceeds to S1370, where the CPU 111 reads the flag data from the“out-of-toner error” operating mode from the ROM 113 (FIG. 8), and turnsOFF the printing function by overwriting the flag setting data in theRAM 115 with this flag data. Then, the present process ends.

After ending the second process to determine printing capacity in S1240of FIG. 23, the process proceeds to S1250, where the CPU 111 determineswhether or not the flag data for the “out-of-toner error” operating modewas set in the previous process. If so (S1250:YES), then the firstprocess to determine printing capacity ends. If not (S1250:NO), then theprocess advances to S1260.

In S1260, the CPU 111 determines whether or not the downloaded data ismonochrome data. If not (S1260:NO), then the first process to determineprinting capacity ends. If so (S1260:YES), then the process shifts toS1270, where the CPU 111 executes a third process to determine printingcapacity. FIG. 25 is a flowchart representing the third process todetermine printing capacity.

As shown in FIG. 25, when the third process to determine printingcapacity starts, first in S1410, the CPU 111 determines whether or notthe number of pages required to print images based on the downloadeddata or images exceeds a predetermined value, which has been set basedon the printing speed of the recording unit 37.

If not (S1410:NO), then the CPU 111 ends the third process to determineprinting capacity. On the other hand, if so (S1410:YES), this means thatthe downloaded data is of a type that does not conform to the printingcapacity (printing speed) of the recording unit 37. Hence, in S1420, theCPU 111 reads the flag data for the “large volume monochrome printing”operating mode from the ROM 113 (FIG. 8), and overwrites the flagsetting data stored in the RAM 115 with the flag data, thereby turningOFF the print function and turning ON the printer transfer function.Subsequently, the CPU 111 ends the third process to determine printingcapacity. As shown in FIG. 23, after executing the third process todetermine printing capacity in S1270, the CPU 111 ends the first processto determine printing capacity simultaneously.

After ending the first process to determine printing capacity of FIG. 23in S580 of FIG. 14, then the process proceeds to S590. In S590, the CPU111 executes an output process. FIG. 26 is a flowchart representing theoutput process.

As shown in FIG. 26, when the output process starts, first in S1510, theCPU 111 reads the flag setting data from the RAM 115. In S1520, the CPU111 determines whether or not the downloaded data should be printedbased on the flag setting data. In other words, the CPU 111 determinesin S1520 whether or not the print function is set to ON (that is,whether the flag value of the print function is “1”). If the CPU 111determines in S1520 that the print function is ON (S1520:YES), thismeans that the downloaded data is to be printed, and the processproceeds to S1523, where the CPU 111 executes a printing process. FIG.27 is a flowchart representing the printing process.

As shown in FIG. 27, when the printing process starts, first in S1610,the CPU 111 determines whether or not the CPU 39 is currently executingthe facsimile function program to receive facsimile data via the circuitcontroller 3. If so (S1610:YES), then the CPU 111 waits until thereception is complete and the facsimile data is printed. By thisoperation, the facsimile device 1 gives top priority to the facsimilefunction.

On the other hand, if the CPU 111 determines in S1610 that the facsimilefunction is not being operated in the main unit 2 (S1610:NO), then inS1615, the CPU 111 issues an instruction to the CPU 39 to prohibit theprinting of new jobs. Next in S1620, the CPU 111 determines whether ornot the CPU 39 is currently executing the print function program,controlling the recording unit 37 to print images based on either datareceived from the personal computer 13, 14 via the LAN and thecommunication module 5 or data received via the PC interface 24, thatis, whether or not a print job is currently being executed in the mainunit 2. If so (S1620:YES), then in S1630, the CPU 111 converts theremaining amount of data to be printed into a number of sheets ofrecording paper to be printed, and determines whether this number ofsheets is less than a predetermined number. If the number of sheets isless than the predetermined number (S1630:YES), then the process returnsto S1610, and the CPU 111 waits until images based on that data havebeen printed.

The predetermined number of pages is set to a few pages. In other words,according to the above determination, the facsimile device 1 givepriority to operating the printer function over the web printingfunction only when the remaining data can be printed on a few pages (theremaining number of pages to be printed is less than the predeterminednumber). In this case, the facsimile device 1 gives priority to thedownloaded data, instructing the recording unit 37 to print images basedthe data received from the personal computers 13 and 14 in order toprovide printed materials based on this data to the user quickly.

On the other hand, if the CPU 111 determines in S1630 that the remainingnumber of pages to be printed is not less than the predetermined number(S1630:NO), then in S1640, the CPU 111 temporarily suspends execution ofthe printer function after allowing the recording unit 37 to finishprinting the current page (one page only). Subsequently, the processadvances to S1650.

In S1650, the CPU 111 transmits the downloaded data to be printed to theCPU 39 via the function expansion interface 93, so that the CPU 39executes the recording unit control program 81 c and controls therecording unit 37 to form only one page worth of images based on thedownloaded data. With this process, if the number of pages to be printedby the printer function is greater than or equal to the predeterminednumber (S1630:NO), then the facsimile device 1 places priority onoperating the web printing function over the printer function anddirects the recording unit 37 to print images based on the downloadeddata.

At this time, the CPU 111 references the flag values corresponding tothe quiet printing function and the monochrome printing function. If thequiet printing function is set to ON (that is, the flag value for thequiet printing function is “1”), then a quiet printing instruction istransmitted to the CPU 39, and the recording unit 37 is controlled toprint the downloaded data in the quiet print mode. If the flag value forthe monochrome printing function is “1,” then a black printinginstruction is transmitted to the CPU 39 and the recording unit 37 iscontrolled to print the downloaded data only using black toner.Alternatively, if the flag value for the monochrome printing function is“2,” then a cyan printing instruction is transmitted to the CPU 39 ofthe main unit 2 and the recording unit 37 is controlled to print thedownloaded data only using cyan toner. If the flag value for themonochrome printing function is “4,” then a magenta printing instructionis transmitted to the CPU 39 of the main unit 2 and the recording unit37 is controlled to print the downloaded data only using magenta toner.

Next in S1660, the CPU 111 determines whether or not all pages of imagesbased on the downloaded data have been printed. If not (S1660:NO), thenthe process returns to S1610. If so (S1660:YES), then the processadvances to S1670, where the CPU 111 determines whether or not printinghas been temporarily suspended in the process of S1640 described above.If so (S1670:YES), then in S1680, the CPU 111 cancels the temporarysuspension. As a result, the CPU 39 resumes the printing of data thatwas interrupted. Then, the process proceeds to S1690. In S1690, the CPU111 issues an instruction to the CPU 39 to clear the prohibition ofprinting new print jobs, and the printing process ends.

On the other hand, if the CPU 111 determines in S1670 that printing wasnot suspended (S1670:NO), then the CPU 111 skips the process of S1680,and the process proceeds to S1690. In S1690, the CPU 111 issues aninstruction to the CPU 39 to clear the prohibition of printing new printjobs, and the printing process ends.

After ending the printing process of FIG. 27 in S1523 of FIG. 26, theprocess proceeds to S1525. In S1525, the CPU 111 appends history dataindicating the downloaded data, that was printed, into the history datastorage unit 115 g, and then the process proceeds to S1530.

If the CPU 111 determines in S1520 that the print function is not ON(that is, the flag value of the print function is “0”), then the CPU 111prohibits the recording unit 37 from printing the downloaded data byexecuting the next process in S1530 without calling the printing processin S1523.

In S1530, the CPU 111 determines whether or not the saving function isset to ON (that is, whether the flag value corresponding to the savingfunction is “1”). If so (flag value is “1”) (S1530:YES), then in S1535,the downloaded data is saved in the transmission/reception data storageunit 115 b, and the process advances to S1540. If the saving function isnot ON (S1530:NO), then the process advances to S1540 without executingthe saving operation in S1535.

In S1540, the CPU 111 determines whether or not the printer transferfunction is set to ON (that is whether the flag value for the printertransfer function is “1”). If the printer transfer function is ON (flagvalue is “1”) (S1540:YES), then in S1545, the downloaded data istransferred via the router controller 101 to the printer 16 at theaddress stored in the transfer destination data storage unit 115 d asthe printer transfer destination (FIG. 6( d)). Then, the processproceeds to S1550. On the other hand, if the printer transfer functionis not ON (S1540:NO), then the process advances to S1550 withoutperforming the printer transfer process in S1545.

In S1550, the CPU 111 determines whether or not the PC transfer functionis set to ON (that is, whether the flag value for the PC transferfunction is “1”). If the PC transfer function is ON (S1550:YES), then inS1555, the downloaded data is transferred via the router controller 101to a personal computer at the address stored in the transfer destinationdata storage unit 115 d as the PC transfer destination (FIG. 6( d)).Then the process proceeds to S1560. On the other hand, if the PCtransfer function is not ON (S1560:NO), then the process advances toS1560 without performing the PC transfer process in S1555.

In S1560, the CPU 111 determines whether or not the log save function isset to ON (that is, whether the flag value for the log save function is“1”). If the log save function is ON (S1560:YES), then in S1565, dataregarding whether the printing, the saving, the printer transfer, or thePC transfer operations were executed for the downloaded data, dataregarding errors, and the like are stored along with the source URL ofthe downloaded data in the log storage unit 115 h as the log. Then, theprocess proceeds to S1570. On the other hand, if the log save functionis not ON (S1560:NO), then the process proceeds to S1570 withoutperforming the log saving process in S1565.

In S1570, the CPU 111 determines whether or not the error displayfunction is set to ON (that is, whether the flag value for the flagdisplay function is “1”). If not (S1570:NO), then the output processends. On the other hand, if so (S1570:YES), then an error process isexecuted in S1575. FIG. 28 is a flowchart representing the errorprocess.

As shown in FIG. 28, when the error process starts, first in S1710, theCPU 111 reads the flag value of the error display function of the flagsetting data from the RAM 115. In S1720, the CPU 111 determines whetheror not an “out-of-paper error” or an “out-of-toner error” has occurredby determining whether the flag value is one of “1” and “2”. If the CPU111 determines that either an “out-of-paper error” or “out-of-tonererror” has not occurred (S1720:NO), then the process advances to S1730.On the other hand, if the CPU 111 determines that an “out-of-papererror” or an “out-of-toner error” has occurred (S1720:YES), then inS1725, the CPU 111 re-stores the URL corresponding to the downloadeddata for which an error occurred into the URL FIFO. Then, the processproceeds to S1730.

In S1730, the CPU 111 determines whether or not the downloaded dataincludes harmful data (for example, illegal data or personally annoyingdata) by referencing the log and the like for keyword errors. If not(S1740:NO), then the process advances to S1740. On the other hand, if so(that is, the web server identified by the URL is providing harmfuldata) (S1730:YES), then in S1735, the CPU 111 transfers data concerningthe URL providing such harmful content to a pre-registered externaldevice to which such data is reported. Here, the keyword database 115 fstores keywords for identifying harmful data. The facsimile device 1executes the process to determine keyword output authorization in orderto find these keywords. Then, the process proceeds to S1740.

In S1740, the CPU 111 displays an error message corresponding to theflag of the error display function and subsequently ends the errorprocess. When the error message ends, the output process (FIG. 26) andthe communication-output process (FIG. 14) also end simultaneously.

After ending the communication-output process of FIG. 14 in S430 of FIG.13, the process returns to S410 in the web data outputting process ofFIG. 13. Then, the same process described above are repeatedly executeduntil either a halt instruction is inputted (S410:YES) or the main poweris switched OFF.

As described in the above embodiment, the router controller 101 builtinto the facsimile device 1 is provided with a function of a broadbandrouter. Therefore, the LAN terminals 13 through 17 connected to the LANconnection port 7 of the communication module 5 can easily be connectedto the Internet by connecting the broadband-capable modem (the ADSLmodem 9 in the preferred embodiment) to the WAN connection port 6 of thecommunication module 5 via a LAN cable, without a separate broadbandrouter 121.

Further, the facsimile device 1 can connect itself to the web server 21and receive data from a desired web page based on a URL inputted fromthe LCD 274, and also can print the received data using the recordingunit 37. Accordingly, the user can easily acquire data from a desiredweb page without having a personal computer 13, 14, or the like.

Further, the facsimile device 1 has a printer function. Therefore, theuser need not provide a separate broadband router or printer when usingthe facsimile device 1 and need not worry about installation space forthese devices.

In particular, since the facsimile device 1 has a plurality offunctions, including a facsimile function, a web printing function, aprinter function, an e-mail transmission/reception function, and a copyfunction, the facsimile device 1 can process various types of data.Further, the facsimile device 1 can be used to configure a system thatcentralizes all data input/output in a single unit. As a result, theuser can easily construct and use a network system without much thought.

In the facsimile device 1 of the preferred embodiment, a printerfunction is executed through remote operations (via a LAN), while a webprinting function is executed by instructions inputted via the operatingpanel 27. While the web printing function is given priority over theprinter function, the printer function is given priority only when theremaining number of pages to be printed is few. Accordingly, outputresults can be provided quickly to both the user using the web printingfunction and the user using the printer function, reducing the amount ofstress that may be felt by these users.

With the facsimile device 1 of the above embodiment, URLs of a serverthat provides inappropriate content are prestored in the accessprohibited database 115 e. Therefore, it is possible to prevent data atprestored URL from being downloaded, thereby prohibiting the printing ofinappropriate data. That is, it is possible to selectively output datarequired by the user by prohibiting image formation based on data of atype not necessary to the user. Hence, the facsimile device can suppressthe waste of recording paper and can prevent the output of inappropriatedata that might be unpleasant to the user.

In the facsimile device 1 of the preferred embodiment, it is possible todetermine whether downloaded data should be printed based on keywords.Therefore, it is prohibit the printing of downloaded data containingwords or phrases related to data content that does not need to beprinted by prerecording these words and phrases in the keyword database115 f, thereby preventing inappropriate data from being printed. In thismanner the facsimile device 1 can selectively form images of only datarequired by a user from among the data acquired from a web server. Inother words, data not required by a user can be discarded withoutforming images based on this data.

In addition, the facsimile device 1 of the preferred embodiment canregulate the printing of downloaded data by passwords, therebypreventing inappropriate data from being provided to users that do notknow the password.

The facsimile device 1 can also conveniently prohibit the printing ofdata that is the same as downloaded data that was previously printedbased on history data. Hence, if the user does not know whether datacontent provided on the web server 21 end has already been printed ornot, the facsimile device 1 can prevent printing of the same contentwhen the data has not been updated, thereby avoiding the printing of thesame content over and over.

In addition, the facsimile device 1 can automatically download and printdata according to a recorded schedule. This is convenient when the userwishes to print data from a web server whose data is updated onpredetermined days. For example, when data on a web server is updatedregularly, rather than painstakingly operating the operating keys 270each time the user wishes to acquire data, the user can automaticallyacquire and browse data from an updated web server through the automaticoperations.

Further, the facsimile device 1 can acquire and print updated data froma web server upon receiving notification from the server of the update,enabling the user to easily obtain and browse the latest data from theweb server without operating the operation keys 270. Since websitesprovided on a web server are often not updated at regular intervals, itis extremely convenient to configure the facsimile device 1 in this way.Further, since the facsimile device 1 need not form images of data thathas not been updated more than once. The facsimile device 1 can suppressthe wasteful use of recording paper by not forming images unnecessarily.

The facsimile device 1 of the preferred embodiment can also transferdownloaded data to the personal computer 13 or 14 and save the data on astorage medium of the personal computer 13 or 14 while prohibiting theprinting of this downloaded data when the answering machine function isset to ON, thereby preventing data from being uselessly printed when theuser is out. After returning home, the user can use the printingfunction of the facsimile device 1 to print the downloaded data bytransmitting the downloaded data stored on the personal computer 13 or14 to the facsimile device 1 in order to browse the data, but only whenthe data is necessary. In addition, the user can display data on thedisplay unit of the personal computers 13 or 14. Hence, the user canprevent images from being formed unnecessarily when the user is out.This function is particularly useful when the user is away from home fora long period of time.

Here, instead of transferring the downloaded data to the personalcomputers 13 and 14, the facsimile device can store in a storage medium,such as a memory, a hard disk, or the like, in the facsimile device 1.

The facsimile device 1 can also print downloaded data more quietly thannormal during the nighttime. Accordingly, the user need not worry muchabout printing noise when scheduling data to be automatically downloadedand printed at night.

The facsimile device 1 of the preferred embodiment can transferdownloaded data to a monochrome printing device (a monochrome laserprinter or the like) capable of printing large quantities, when thedownloaded data is monochrome data or when the amount of data to beprinted is large, and to print the downloaded data on the monochromeprinting device. Hence, when printing a large volume of data for aprinting job that will take a long period of time, it is possible toavoid the printing function from being inoperable for a long period oftime. The facsimile device 1 of the preferred embodiment can also switchto a monochrome printing mode for printing the downloaded data whentoner for one of the four colors is out, enabling a form of the printingresults to be provided to the user when the user wishes to print thedownloaded data urgently.

The facsimile device 1 of the preferred embodiment can also display anoutline of the downloaded data content on the LCD 274 to prompt the userregarding whether to print the data or not and to print the downloadeddata only after receiving permission from the user. Hence, the facsimiledevice 1 can determine whether to print downloaded data after the usergets an idea of the data content to be printed. As a result, the userneed not output unnecessary data on the facsimile device 1.

Moreover, the facsimile device 1 can notify an external party ofdetermination results when a web server is determined to be providingharmful data, it is possible to notify the police or the like regardingweb servers providing harmful data. Then, such authorities can takeaction against web servers providing illegal data or the like.

While the invention has been described in detail with reference tospecific embodiments thereof, it would be apparent to those skilled inthe art that many modifications and variations may be made thereinwithout departing from the spirit of the invention, the scope of whichis defined by the attached claims.

For example, although a single LAN connection port 7 has been providedin the facsimile device 1 of the preferred embodiment, it is possible toprovide a plurality of the LAN connection port 7. Further, in theexample of the preferred embodiment, the ADSL modem 9 is connected tothe WAN connection port 6. However, a DSL modem or a cable modem can beconnected to the WAN connection port 6 instead. Since the functions ofthe broadband router 121 described above are built into thecommunication module 5 of the preferred embodiment, a DSL modem or cablemodem can be directly connected to the communication module 5 via acable, and the communication module 5 can perform bi-directionalcommunications with a server on the WAN via this DSL modem or cablemodem.

Since it is possible to determine whether printing should be prohibitedbased on history data prior to downloading data according to the mannerin which history data is handled, the facsimile device 1 can beconfigured to execute the process to determine history outputauthorization prior to downloading data in this case. If the URLs ofdownloaded data that have been printed are stored as history data, inother words, it is possible to determine whether to print the data bycomparing the history data to the URL from which data is to bedownloaded prior to downloading the data. In this case, it is possibleto execute the process to determine URL access authorizationsimultaneously with the process to determine history outputauthorization.

In the preferred embodiment described above, the present invention isapplied to a facsimile device, but the present invention can also beapplied to a printer, a copy machine, and the like, or to a device thatcannot print in color (a monochrome printing device). When applying thepresent invention to a monochrome printing device, multicolor datadownloaded from a web server can be transferred to a device capable ofprinting in color via the LAN in order to print the downloaded data onthe color printing device. In this manner, it is possible to provide theuser with printed matter (recording paper with images formed thereon) ofa higher quality.

Further, while the example in the preferred embodiment described aboveforms images through color laser printing, the image forming device canalso be configured to form images through color inkjet printing.Further, in the example of the preferred embodiment described above, theADSL modem 9 and the communication module 5 are connected via the LANcable L3, but the ADSL modem 9 and the communication module 5 can alsobe connected wirelessly.

1. An image forming device comprising: an image forming unit that formsimages on a recording medium; a communicating unit that performsbi-directional communications with a web server provided on a wide areanetwork; a data acquiring unit that acquires web data from the webserver corresponding to a specified address via the communicating unit;a control unit that controls the image forming unit to form the imagesbased on the web data acquired by the data acquiring unit; a historydata memory that stores history data indicating web data based on whichthe image forming unit has formed the images; an identifying unit thatidentifies, based on the history data, whether or not the web data is ofa type based on which the images have been formed previously; and adetermining unit that determines not to form the images based on the webdata acquired by the data acquiring unit, if the identifying unitidentifies that the web data is of the type based on which the imageshave been formed previously; wherein the control unit prohibits theimage forming unit from forming the images based on the web data whenthe determining unit determines that the images should not be formedbased on the web data.
 2. The image forming device according to claim 1,wherein the identifying unit includes: a first memory that stores serverdata indicating web servers that provide web data based on which imagesshould not be formed; and a server identifying unit that identifies thetype of web data that the web server corresponding to a specific addressprovides, based on the server data, prior to the data acquiring unitacquiring the web data.
 3. The image forming device according to claim1, wherein the identifying unit includes: a second memory that storeskeywords; a searching unit that searches the web data for the keywords;and a type identifying unit that identifies the type of the web databased on search results of the searching unit.
 4. The image formingdevice according to claim 3, further comprising a harmful data notifyingunit, wherein the keywords stored in the second memory includes keywordsfor identifying harmful data, and the harmful data notifying unitdetermines whether or not the web server is providing harmful web databased on search results of the searching unit and notifies an externalparty of the determination results when determines that the web serveris providing the harmful web data.
 5. The image forming device accordingto claim 1, wherein: the determining unit includes an authorizationnotifying unit that determines, based on the type of the web data,whether or not the web data is of a type that requires userauthorization, and that notifies the user of the determination resultswhen the web data is determined to be of the type that requires the userauthorization; and the determining unit checks the user's authorizationbased on authorization data that the user inputs via external operationswithin a predetermined period of time after the authorization notifyingunit has notified the use of the determination result, and determinesthat images based on the web data should not be formed whenauthorization fails.
 6. The image forming device according to claim 1,wherein the data acquiring unit includes a fourth memory that storesaddresses of web servers and a periodic acquiring unit that acquires theweb data from web servers corresponding to the addresses stored in thefourth memory at prescribed intervals.
 7. The image forming deviceaccording to claim 6, wherein the periodic acquiring unit acquires theweb data from the web server every time a notification is obtained froman external source indicating that the web data on the web servercorresponding to the addresses stored in the fourth memory has beenupdated.
 8. The image forming device according to claim 6, wherein thedetermining unit determines that images based on the web data should notbe formed, regardless of the type of the web data, during an outputprohibit period between when the user inputs a prohibit instruction andwhen the user inputs a release instruction.
 9. The image forming deviceaccording to claim 8, wherein the control unit stores the web data thatthe data acquiring unit acquired during the output prohibit period intoa fifth memory.
 10. The image forming device according to claim 1,wherein the control unit stores the web data, based on which the controlunit prohibits the image forming unit from forming images, into a fifthmemory.
 11. The image forming device according to claim 1, furthercomprising a transferring unit, wherein the communicating unit performsbi-directional communications with a LAN terminal provided on a localarea network, and the transferring unit transfers the web data to theLAN terminal via the communicating unit.
 12. The image forming deviceaccording to claim 11, wherein: the identifying unit determines whetheror not the web data is a conforming-type data that is of a typeconforming to an image forming capacity of the image forming unit; thedetermining unit determines that images based on the web data should notbe formed when the identifying unit determines that the web data is notthe conforming-type data; and when the identifying unit determines thatweb data is not the conforming-type data and the determining unitdetermines that images based on the web data should not be printed, thecontrol unit controls the transferring unit to transfer the web datadetermined not the conforming-type data to the LAN terminal having animage forming function.
 13. The image forming device according to claim1, further comprising: a display unit that displays an outline of theweb data when the determining unit determines that images based on theweb data should be formed, enabling the user to input an instruction onwhether or not images should be formed based on the web data; and a userauthorization unit that determines whether or not images based on theweb data should be formed according to the instruction from the user;wherein the control unit prohibits the image forming unit from formingimages based on the web data when the user authorization determiningunit determines that image based on the web data should not be formed.14. The image forming device according to claim 1, further comprising: asixth memory that stores a plurality of addresses; a storing unit thatstores memo data in association with corresponding addresses into thesixth memory, a display unit that displays a list of the memo data; anda selecting unit that enables the user to select one of the memo datafrom the displayed list, wherein the control unit controls the dataacquiring unit to acquire web data from the web server corresponding tothe address stored in association with the memo data that the user hasselected through the selecting unit.
 15. The image forming deviceaccording to claim 1, wherein the data acquiring unit fails to acquirethe web data, whose address is specified by the user, if the determiningunit determines that images should not be formed.
 16. Acomputer-readable medium encoded with a control program of controllingan image forming device, the image forming device including an imageforming unit that forms images on a recording medium, a communicatingunit that performs bi-directional communications with a web serverprovided on a wide area network, a data acquiring unit that acquires webdata from the web server corresponding to a specified address via thecommunicating unit, a control unit that controls the image forming unitto form images based on the web data acquired by the data acquiringunit, and a history data memory that stores history data indicating webdata based on which the image forming unit has formed images, theprogram comprising instructions for: a) acquiring web data from the webserver corresponding to the specified address via the communicatingunit; b) identifying, based on the history data, whether or not the webdata is of a type based on which images have been formed previously; c)determining not to form images based on the web data, acquired by thedata acquiring unit, if the identifying instruction identifies that theweb data is of the type based on which images have been formedpreviously; and d) prohibiting the image forming unit to form imagesbased on the web data when it is determined in the program c) thatimages should not be formed based on the web data.
 17. Thecomputer-readable medium according to claim 16, wherein a) fails toacquire the web data, whose address is specified by the user, if it isdetermined in c) that images should not be formed.
 18. A control methodof controlling an image forming device, the image forming deviceincluding an image forming unit that forms images on a recording medium,and-a communicating unit that performs bi-directional communicationswith a web server provided on a wide area network, a data acquiring unitthat acquires web data from the web server corresponding to a specifiedaddress via the communicating unit, a control unit that controls theimage forming unit to form images based on the web data acquired by thedata acquiring unit, and a history data memory that stores history dataindicating web data based on which the image forming unit has formedimages, the control method comprising the steps of: a) acquiring webdata from the web server corresponding to the specified address via thecommunicating unit; b) identifying, based on the history data, whetheror not the web data is of a type based on which the images have beenformed previously; c) determining not to form the images based on theweb data acquired by the data acquiring unit, if the identifying stepidentifies that the web data is of the type based on which images havebeen formed previously; and d) prohibiting the image forming unit toform images based on the web data when it is determined in the step c)that images should not be formed based on the web data.
 19. The controlmethod according to claim 18, wherein a) fails to acquire the web data,whose address is specified by the user, if it is determined in c) thatimages should not be formed.